# Requests 入门
# Requests 模块：python 中原生的一款基于网络请求的模块，功能非常强大，简单便捷，效率极高。
#          作用：模拟浏览器发请求。
# pip install requests
# 国内源：pip install -i https://pypi.tuna.tsinghua.edu.cn/simple requests

# UA 检测：门户网站的服务器会检测对应请求的载体身份标识，如果监测到请求的载体是某一款浏览器，表明该请求是一个正常的请求。
#         但是检测到请求载体不是基于某一款浏览器的则表示为不正常请求（爬虫），则服务器端就很有可能拒绝该请求。
# UA：User-Agent(请求载体的身份标志)
# UA 伪装：让爬虫对应的请求载体身份标识伪装成某一款浏览器
import requests

if __name__ == "__main__":

    query = input('请输入你想搜索的问题：')

    # 01. 指定 url
    url = f'https://cn.bing.com/search?q={query}'

    # 02. 发起请求，使用 get 方法发起 get 请求，该方法回返回一个响应对象。参数 url 表示请求相应的 url。
    headers = {
        "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36"
    }
    resp = requests.get(url, headers=headers)  # 处理一个小小的反爬虫

    # 03. 获取响应数据：通过调用响应对象的 text 属性，返回响应对象中存储的字符串形式的响应数据（页面源码数据）
    page_text = resp.text

    # 04. 持久化存储
    with open(f'./爬取文件/02_{query}.html', mode='w', encoding='utf-8') as file:
        file.write(page_text)  # 读取爬到网页的源代码

    print('over')
    resp.close()


